// 3.1.1 判断-判断语句-if else
/**
 * 判断结构要求程序员指定一个或多个要评估或测试的条件，以及条件为真时要执行的语句（必需的）和条件为假时要执行的语句（可选的）。
 * 
 * ----------------------
 * 判断语句
 * if 语句
 * 一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。
 * 
 * if...else 语句
 * 一个 if 语句 后可跟一个可选的 else 语句，else 语句在布尔表达式为假时执行。
 * 
 * 嵌套 if 语句
 * 您可以在一个 if 或 else if 语句内使用另一个 if 或 else if 语句。
 * 
 * switch 语句
 * 一个 switch 语句允许测试一个变量等于多个值时的情况。
 * 
 * 嵌套 switch 语句
 * 您可以在一个 switch 语句内使用另一个 switch 语句。
 * 
 * ***C 语言把任何非零和非空的值假定为 true，把零或 null 假定为 false。
*/

#include <iostream>

int main(void)
{
  if (NULL)
  {
    std::cout << "1" << std::endl;
  }
  else if (1)
  {
    std::cout << "2" << std::endl;
    if (false)
    {
      std::cout << "2-1" << std::endl;
    }
    else
    {
      std::cout << "2-2" << std::endl;
    }
  }
  else
  {
    std::cout << "3" << std::endl;
  }
  printf("----------end-----------\n");
  return 0;
}